package com.future.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.future.domain.DTO.AnswerDetailDTO;
import com.future.domain.DTO.QuestionnaireDTO;
import com.future.domain.Result;
import com.future.domain.Questionnaire;
import com.future.domain.vo.QuestionnaireVO;

import java.io.UnsupportedEncodingException;
import java.util.List;


public interface IQuestionnaireService extends IService<Questionnaire> {
    Result publish(QuestionnaireDTO questionnaire);

    Result updateQuestionnaire(QuestionnaireDTO questionnaireDTO, Long questionnaireId);

    Result judge(List<AnswerDetailDTO> answerList, String questionnaireId) throws Exception;

    Result getQuestionnaire(String questionnaireId);


    Result getAllQuestionnaireByPage(Integer pageNum ,Integer pageSize);


    Result getAverageScore();


    Result saveLink(Long id) throws UnsupportedEncodingException;
    Result getByLink(String link) throws UnsupportedEncodingException;

    Result getDraft(Integer pageNum ,Integer pageSize);

    Result getPublished(Integer pageNum, Integer pageSize,String title);

    Result deleteById(Long id);

    Result updateQuestionnaire1(QuestionnaireVO questionnaire);
}
